package com.woniuxy.woniuhis.service;

import java.util.List;

import com.github.pagehelper.PageInfo;
import com.woniuxy.woniuhis.entity.SurgeryBooking;

public interface SurgeryBookingService {
	
	/**
	 * 	添加手术预约记录
	 */
	void addSurgeryBooking(SurgeryBooking surgeryBooking);
	
	/**
	 * 	更新手术手术预约记录
	 */
	void modifySurgeryBooking(SurgeryBooking surgeryBooking);
	
	/**
	 * 	查询指定手术预约记录
	 */
	SurgeryBooking findSurgeryBookingById(String id);
	
	/**
	 * 	查询所有的手术预约记录,
	 */
	PageInfo<SurgeryBooking> findSurgeryBookings(SurgeryBooking surgeryBooking, int pageIndex,int pageSize);
	
	
	/**
	 * 	修改预约单中的状态   这里的状态  开始填写预约单时的状态是预约状态，
	 * 	修改状态会出现的情形
	 * 		1. 未执行 --> 取消，这个预约单就无效了，取消现需要修改两个字段，状态可以回滚，但是没有必要这么写
	 * 		2. 未执行 --> 执行 --> 执行完成   这里状态不能出现回滚的情况
	 * 		3. 未执行 --> 过期     写一个定时任务，每天的半夜3点执行，这里不考虑这种情况
	 * 	所以初始状态都是从未执行到其他状态，这样就好办了 
	 */
	void modifySurgeryBookingSituation(SurgeryBooking surgeryBooking);
}
